package com.csust.automaticteach.service;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.csust.automaticteach.model.dto.chatsession.ChatSessionQueryRequest;
import com.csust.automaticteach.model.dto.chatsession.updateChatsessionRequest;
import com.csust.automaticteach.model.entity.Chatsession;
import com.baomidou.mybatisplus.extension.service.IService;
import com.csust.automaticteach.model.vo.chatsession.ChatSessionVO;

import java.util.List;

/**
* @author 钰玟
* @description 针对表【t_chatsession(会话表)】的数据库操作Service
* @createDate 2025-07-09 21:01:18
*/
public interface ChatsessionService extends IService<Chatsession> {

    /**
     * 获取查询条件的Wrapper
     * @param chatSessionQueryRequest 查询条件
     * @return 查询条件
     */
    QueryWrapper<Chatsession> getChatSessionQueryWrapper(ChatSessionQueryRequest chatSessionQueryRequest);

    /**
     * 实体转化为VO对象
     * @param chatsession 实体会话
     * @return
     */
    ChatSessionVO getChatSessionVO(Chatsession chatsession);

    /**
     * 获取会话vo列表
     * @param records 实体会话列表
     * @return
     */
    List<ChatSessionVO> getChatSessionVOList(List<Chatsession> records);

    /**
     * 更新会话
     * @param updateChatsessionRequest 更新会话参数请求
     * @return
     */
    Boolean updateChatsession(updateChatsessionRequest updateChatsessionRequest);
}
